Учебный курс: Подготовка на 1С:Специалист по платформе 1С:Предприятие 8.3

Задачи по расчетным механизмам – тема № 19:
Как реализовать автоматическое разбиение периодов, переходящих из одного месяца в другой

Чаще всего в аттестационных задачах можно увидеть следующее условие: «Считать, что все данные вводятся только в пределах одного месяца. Например, можно указать начисление оклада с 10.04 по 30.04, а запись оклад: с 10.04 по 06.05 вводить нельзя», – которое указывает на то, что пользователь не может указывать периоды, которые могут включать в себя несколько расчетных периодов (месяцев), что облегчает решение задачи.

Но иногда в задачах бывает и другое условие, на которое стоит обратить внимание:

«Считать, что данные о начислении командировки могут переходить из одного месяца в другой. К примеру, можно указать начисление командировки – с 25.01 по 05.03, при этом каждое начисление в документе вводится одной строкой с указанием полного периода».

Например, похожее условие можно увидеть в аттестационных задачах 3.6, 3.12, 3.21 и др.

Тут сложность заключается в том, что несмотря на то, что в документе можно указывать период, включающий в себя несколько месяцев, платформа не даст записать движения регистра расчета с таким периодом, поэтому при проведении документа необходимо будет разбить его на несколько движений с различными периодами (по числу месяцев).

Для решения возьмем за основу задачу по механизмам вытеснения (глава «6. Что такое механизм вытеснения и как он используется при расчете периодических начислений») и расширим ее возможности.

Напишем обработку проведения, которая будет разбивать записи с такими периодами и записывать в регистр расчета только записи с корректными интервалами периода действия:

К сожалению, у Вас недостаточно прав для дальнейшего просмотра.

Если Вы приобрели курс, но еще не активировали токен — пожалуйста, активируйте доступ по инструкциям, высланным на Ваш email после покупки.

Если Вы не залогинены на сайте — залогиньтесь, вернитесь на эту страницу и обновите ее.

Если Вы залогинены, у Вас активирован токен доступа, но Вы все равно видите эту запись — напишите нам на e-mail поддержки.

Комментарии закрыты